package com.sh.dc.common.pojo.bo;

import com.sh.dc.entity.OperatorParam;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.util.List;

@Data
public class OperatorSaveBO {

    private Long id;

    @NotNull(message = "算子中文名不能为空")
    private String name;

    @NotNull(message = "算子英文名不能为空")
    private String nameEn;

    @NotNull(message = "适用学科不能为空")
    private String subjectCode;

    @NotNull(message = "适用类型不能为空")
    private String applicableTypeCode;

    private String description;

    @NotNull(message = "算子实现文件id不能为空")
    private Long fileResourceId;

//    @NotNull(message = "算子实现不能为空")
//    private String operatorUrl;

    private String operatorFileName;

    @NotNull(message = "入口文件不能为空")
    private String entryFilePath;

    @NotNull(message = "入口函数不能为空")
    private String entryFunc;

    /**
     * 算子文件列表
     */
    private List<OperatorFile> operatorFiles;

    /**
     * 算子参数列表
     */
    private List<OperatorParam> operatorParams;

    /**
     * 返回值列表
     */
    private List<OperatorResult> operatorResults;

    /**
     * 捕获参数列表
     */
    private List<OperatorFuncParam> operatorFuncParams;



}
